Halcon中几种常见的图像分割学习

您所在的位置:网站首页 halcon region数组截图 Halcon中几种常见的图像分割学习

Halcon中几种常见的图像分割学习

2023-11-21 07:56| 来源: 网络整理| 查看: 265

为什么要用图像分割 ?

答: 为了使图像进一步缩小,可以将感兴趣的区域从背景中分离出来,使关键目标更便于辨别和分析。

图像分割的标准:像素灰度、边界、几何形状、颜色、纹理等。

在这里插入图片描述

1. 阈值处理: 全局阈值:输出阈值范围内灰度的像素。 在这里插入图片描述 *MinGray:灰度下限 *MaxGray:灰度上限 threshold(Image : Region : MinGray, MaxGray)

示例:

*选择0-90之间灰度的图像 threshold (ImageFilled, Region, 0, 90) *将不相连的区域分开成若干个区域 connection (Region, ConnectedRegions) *形状选择宽度在30px-70px之间的区域 select_shape (ConnectedRegions, SelectedRegions, 'width', 'and', 30, 70) select_shape (SelectedRegions, Letters, 'height', 'and', 60, 110)

在Halcon常使用 “灰度直方图” 工具可视化选取阈值范围。 在这里插入图片描述 在Halcon常使用 “特征直方图” 工具可视化选取形状特征(这里既筛选了宽度&高度)。 在这里插入图片描述 2. 基于直方图的自动阈值分割:

*Sigma:平滑值,值越大越平滑,反之 auto_threshold(Image : Regions : Sigma)

在这里插入图片描述 Sigma值越大,波峰越少,分割区域数量越少。

自动全局阈值分割:此算子根据像素分布提供了可选的分割方法 : 【1. 最大类间方差法 2.平滑直方图法】 *Method:分两个分割方法: 'max_separability'表示根据选择的极性,最大化分割 'smooth_histo'平滑直方图处理 *LightDark:表示极性,提取白或者黑 *UsedThreshold:返回所用的阈值 binary_threshold(Image : Region : Method, LightDark : UsedThreshold)

在这里插入图片描述

binary_threshold (Image, LightRegion, 'max_separability', 'light', UsedThreshold) *开运算区域:先腐蚀,再膨胀,用于处理微小毛刺和噪点 opening_circle (LightRegion, Region, 3.5) 局部阈值分割:适用于无法使用单一的阈值分割的情况,如背景比较复杂。 一般和平滑滤波器 mean_image 一起使用。 *OrigImage:输入原图 *ThresholdImage:输入预处理图,用于局部变化对比 *RegionDynThresh: 输出区域 *Offset:原图与均值图像对比之后大于此参数,会被输出 *LightDark:提取的极性,黑或者白 dyn_threshold(OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark) 2. 区域生长法: regiongrowing算子:将灰度相似的相邻的像素合并为同一区域 *Row 和 Column分别表示卷积核的XY数量 *Tolerance:表示卷积核中心像素灰度与相邻像素的差值公差,大于公差丢弃,小于公差合并 *MinSize:表示输出的区域的最小像素数量 regiongrowing(Image : Regions : Row, Column, Tolerance, MinSize) 3. 分水岭算法: watersheds_threshold算子:基于边缘的图像分割,通过寻找区域之间的分界线进行分割 *Basins:输出的盆地区域 *Threshold: 分割阈值,不要超出图像的的最大灰度 watersheds_threshold(Image : Basins : Threshold)

在这里插入图片描述 以上,如有错误,欢迎提出批评,谢谢。。。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3